const Utils = require('./Utils.js')

Utils.init()

var flag, count, gosts, storage
gosts = [
  [1293, 233, 80, 65],
  [1293, 385, 80, 65],
  [1293, 540, 80, 65],
] // 3个鬼王坐标范围
flag = true
count = 0
storage = storages.create('yys')

// while (flag) {
//   Utils.sleeps()
//   log('第 ' + ++count + ' 次')
//   if (Utils.findPictureTap('地域鬼王')) {
//     log('地域鬼王 - 成功')
//     challengeTheRegionalGhostKing()
//     flag = false
//   } else {  
//     if (Utils.findPictureTap ('现世妖约')) {
//       log('现世妖约 - 成功')
//     } else { 
//       if (Utils.findPictureTap('妖怪之里')) {
//         log('主界面 - 成功')
//       }
//     }
//   }
// }
challengeTheRegionalGhostKing()
/**
 * @description 挑战地域鬼王
 */
function challengeTheRegionalGhostKing() {
  const num = storage.get('num')  // 要挑战的鬼王数量
  let times = 0 // 已挑战的鬼王数量
  while (times < num) {
    Utils.sleeps()
    let gw = gosts[times]
    if (Utils.findPictureTap('选择挑战', gw)) {
      log('选择挑战 - 成功')
      Utils.sleeps()
      if (Utils.findPicture('减')) {
        // // 鬼王等级从1开始时
        // let ghostKingLevel = storage.get('level') // 鬼王等级
        // if (ghostKingLevel > 1 && ghostKingLevel <= 60) {
        //   for (let count = 0; count < ghostKingLevel - 1; count++) {
        //     sleep(random(100, 300))
        //     Utils.findPictureTap('加')
        //     log('鬼王等级：' + (2 + count))
        //   }
        // } else if (ghostKingLevel > 60) {
        //   for (let i = 1; i < 60; i++) {
        //     sleep(random(100, 300))
        //     Utils.findPictureTap('加')
        //     log('鬼王等级：' + (1 + count))
        //   }
        // }
        // 鬼王等级从40开始时
        if (times === 0) {
          let ghostKingLevel = storage.get('level') // 鬼王等级
          if (ghostKingLevel > 0 && ghostKingLevel < 40) {
            for (let count = 1; count <= 40 - ghostKingLevel; count++) {
              sleep(random(100, 300))
              Utils.findPictureTap('减')
              log('鬼王等级：' + (40 - count))
            }
          } else if (ghostKingLevel > 40 && ghostKingLevel <= 60) {
            for (let count = 1; count <= ghostKingLevel - 40; count++) {
              sleep(random(100, 300))
              Utils.findPictureTap('加')
              log('鬼王等级：' + (40 + count))
            }
          } else if (ghostKingLevel > 60) {
            for (let count = 0; count < 20; count++) {
              sleep(random(100, 300))
              Utils.findPictureTap('加')
              log('鬼王等级：' + (40 + count))
            }
          }
        }
      }
      if (Utils.findPictureTap('挑战', 0.8)) {
        log('点击挑战 - 成功')
        Utils.waitTime(7)
        let flagTemp = true
        while (flagTemp) {
          if (Utils.findPictureTap('准备')) {
            log('点击准备 - 成功')
            flagTemp = false
          }
        }
        let seconds = random(40, 60)
        Utils.waitTime(seconds)
        let flagTempTwo = true
        while (flagTempTwo) {
          log('已等待：' + (seconds += 2) + '秒')
          if (Utils.findPictureTap('奖励')) {
            log('奖励界面 - 成功')
            times++
            log('鬼王' + times + '：成功')
            flagTempTwo = false
          } else if (Utils.findPictureTap('胜利')) {
            log('胜利界面 - 成功')
          } else if (Utils.findPicture('失败')) {
            log('击杀鬼王 - 失败')
            Utils.stopJB()
          }
        }
        Utils.waitTime(4)
        Utils.findPictureTap('叉号')
      }
    } else if (Utils.findPictureTap('筛选', 0.98)) {
      log('筛选 - 成功')
    }
  }
  let counts = 0
  while (times == num) {
    sleep(1000)
    if (Utils.findPictureTap('返回二')) {
      log('返回二 - 成功')
      counts++
      if (counts === 2) times++
    }
    // else if (Utils.findPictureTap('返回一')) {
    //   log('返回一 - 成功')
    //   times++
    // }
  }
}